package org.itboys.product.entity;

import java.util.List;

import org.itboys.mongodb.entity.BaseLongIdEntity;

import org.mongodb.morphia.annotations.Entity;
import org.mongodb.morphia.annotations.Indexed;

/**
 * 商品一级分类 和 拥有该 一级分类的店铺的品牌的 关联关系 冗余表
 * 没添加一个店铺 就把店铺拥有的一级分类 对应的 rootCategoryId 的该记录 的 brandIds 加上该店铺的品牌ID
 * 关闭一个店铺 判断其他店铺对应的 rootCategoryId 还有没有这个品牌 没有 则从 brandIds 移除
 * @author ChenJh
 *
 */
@Entity(value = "ProductBrandCategory", noClassnameStored = true)
public class ProductBrandCategory extends BaseLongIdEntity{

	private static final long serialVersionUID = -5534059358090564354L;

	/**
	 * 一个叶子节点下如果挂了品牌的话 则其所有父节点都加上该品牌
	 */
	@Indexed(unique = true, dropDups = false)
	private Long categoryId;

	@Indexed
	private List<Long> brandIds;


	public Long getCategoryId() {
		return categoryId;
	}

	public void setCategoryId(Long categoryId) {
		this.categoryId = categoryId;
	}
	public List<Long> getBrandIds() {
		return brandIds;
	}
	public void setBrandIds(List<Long> brandIds) {
		this.brandIds = brandIds;
	}
}
